package com.cldz.feign;

import com.cldz.config.FeignConfiguration;
import com.cldz.response.support.ServerResponse;
import com.cldz.common.dto.req.DeviceDto;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

/**
 * @ Author     ：lixiao.
 * @ Date       ：Created in 15:36 2018/12/3
 * @ Description：
 * @ Modified By：
 */
@FeignClient(name = "data" ,configuration = FeignConfiguration.class)
public interface DevListFeign {

    @RequestMapping(value = "/getDevListByAreaID",method = RequestMethod.GET)
    ServerResponse getDevListByAreaID(DeviceDto deviceDto);

    @RequestMapping(value = "/getDevicesInfoWithStation",method = RequestMethod.GET)
    ServerResponse getDevicesInfoWithStation(DeviceDto deviceDto);

    @RequestMapping(value = "/dev/{devID}",method = RequestMethod.GET)
    ServerResponse<DeviceDto> getDevByID(@PathVariable(name = "devID")String devID);

    @RequestMapping(value = "/getDevListByTypeID",method = RequestMethod.GET)
    ServerResponse getDevListByTypeID(DeviceDto deviceDto);

    @RequestMapping(value = "/getDevicesWithIpPort",method = RequestMethod.GET)
    ServerResponse getPassiveDeviceByInfo(DeviceDto deviceDto);

    @RequestMapping(value = "/isExistDev",method = RequestMethod.GET)
    ServerResponse isExistDev(DeviceDto deviceDto);

    @RequestMapping(value = "/deviceTypes",method = RequestMethod.GET)
    ServerResponse getDeviceTypes(DeviceDto deviceDto);

    @RequestMapping(value = "/censusWithDeviceType",method = RequestMethod.GET)
    ServerResponse censusWithDeviceType(DeviceDto deviceDto);

    @RequestMapping(value = "/getDeviceStatus",method = RequestMethod.GET)
    ServerResponse getDeviceStatus(DeviceDto deviceDto);


}
